package com.dingding.manager.modules.order.dto;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 
 * @ClassName: ResOrderDetailsDTO 
 * @Description: 订单详情
 * @author hufan
 * @date 2016年12月9日 上午10:36:29 
 *
 */
public class ResOrderDetailsDTO implements Serializable{
	
	private static final long serialVersionUID = -7031988878759445918L;

	//(统一为oid)
	private String oid;//订单号
	//由于专车、出租车状态值不统一，需要后台通过订单类型返回实际状态
	private String orderSate;//
	
	//common
	private BigDecimal alipayMoney;//第三方支付金额
	private String cancelDesc;//订单取消原因
	private Date cancelTime;//订单取消时间
	private Integer cancelType;//取消类型 1:乘客取消 2:车主取消 3:自动取消
	private Date createTime;//下单时间
	private BigDecimal distance;//行程距离
	private String endAddress;//终点
	private Double endLatitude;//终点纬度
	private Double endLongitude;//终点经度
	private Date endTime;//车主确认到达时间
	private String grabOrderUserId;//抢单司机ID
	private BigDecimal payMoney;//叮币支付金额
	private Date payTime;//订单支付时间
	private Integer payType;//支付类型 1:支付宝支付 2:微信支付 3:叮币支付
	private String placeOrderCity;//下单城市
	private String placeOrderUserId;//下单用户ID
	private Integer publishType;//发单类型 1:顺风车2:出租车3:专车 4:渠道发单（专车
	private Date setOutTime;//出发时间
	private String startAddress;//起点
	private Double startLatitude;//起点纬度
	private Double startLongitude;//起点经度
	private BigDecimal totalMoney;//订单总金额
	private BigDecimal startFee;//起步费
	private BigDecimal minimums;//最低消费
	private BigDecimal durationFee;//时长费
	private BigDecimal longDistance;//长途距离
	private BigDecimal longFee;//长途费
	private BigDecimal nightDistance;//夜间距离
	private BigDecimal nightFee;//夜间距离
	
	//将id映射为名称
	private String driverName;//下单用户
	private String passengerName;//乘客用户
	
	//(special专属)
	private Date aboardTime;//上车时间
	private Date appointTime;//指派时间
	private Double debusLatitude;//下车纬度
	private Double debusLongitude;//下车经度
	private BigDecimal estimateDistance;//平台估算距离
	private BigDecimal estimateDuration;//平台估算时长
	private BigDecimal estimateMoney;//平台估算金额
	private Double aboardLatitude;//上车纬度
	private Double aboardLongitude;//上车经度
	private BigDecimal duration;//订单时长
	private Integer setOutType;//出发类型 1:实时 2:预约 (问题是前端需要专车、出租车都需要展示)
	
	//(taxi专属)
	private Integer transactionType;//交易类型 1：线上支付 2：线下支付
	private Integer setOutCondition;//出发条件 1：无 2：出发前后15分钟 3：随时出发
	
	//(specialordercomment:出租车、专车公用==订单评论)
	private String evaluateContent;//评论内容
	private Date evaluateDate;//评论时间
	private String evaluateLabel;//评论标签
	private BigDecimal evaluateLevel;//星级
	private Integer isDispay;//是否显示评论
	
	//新添加字段
	private String passengerPhone;//乘客手机号
	
	public String getOid() {
		return oid;
	}
	public void setOid(String oid) {
		this.oid = oid;
	}
	public String getOrderSate() {
		return orderSate;
	}
	public void setOrderSate(String orderSate) {
		this.orderSate = orderSate;
	}
	public Double getAboardLatitude() {
		return aboardLatitude;
	}
	public void setAboardLatitude(Double aboardLatitude) {
		this.aboardLatitude = aboardLatitude;
	}
	public Double getAboardLongitude() {
		return aboardLongitude;
	}
	public void setAboardLongitude(Double aboardLongitude) {
		this.aboardLongitude = aboardLongitude;
	}
	public Date getAboardTime() {
		return aboardTime;
	}
	public void setAboardTime(Date aboardTime) {
		this.aboardTime = aboardTime;
	}
	public BigDecimal getAlipayMoney() {
		return alipayMoney;
	}
	public void setAlipayMoney(BigDecimal alipayMoney) {
		this.alipayMoney = alipayMoney;
	}
	public Date getAppointTime() {
		return appointTime;
	}
	public void setAppointTime(Date appointTime) {
		this.appointTime = appointTime;
	}
	public String getCancelDesc() {
		return cancelDesc;
	}
	public void setCancelDesc(String cancelDesc) {
		this.cancelDesc = cancelDesc;
	}
	public Date getCancelTime() {
		return cancelTime;
	}
	public void setCancelTime(Date cancelTime) {
		this.cancelTime = cancelTime;
	}
	public Integer getCancelType() {
		return cancelType;
	}
	public void setCancelType(Integer cancelType) {
		this.cancelType = cancelType;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}
	public Double getDebusLatitude() {
		return debusLatitude;
	}
	public void setDebusLatitude(Double debusLatitude) {
		this.debusLatitude = debusLatitude;
	}
	public Double getDebusLongitude() {
		return debusLongitude;
	}
	public void setDebusLongitude(Double debusLongitude) {
		this.debusLongitude = debusLongitude;
	}
	public BigDecimal getDistance() {
		return distance;
	}
	public void setDistance(BigDecimal distance) {
		this.distance = distance;
	}
	public BigDecimal getDuration() {
		return duration;
	}
	public void setDuration(BigDecimal duration) {
		this.duration = duration;
	}
	public String getEndAddress() {
		return endAddress;
	}
	public void setEndAddress(String endAddress) {
		this.endAddress = endAddress;
	}
	public Double getEndLatitude() {
		return endLatitude;
	}
	public void setEndLatitude(Double endLatitude) {
		this.endLatitude = endLatitude;
	}
	public Double getEndLongitude() {
		return endLongitude;
	}
	public void setEndLongitude(Double endLongitude) {
		this.endLongitude = endLongitude;
	}
	public Date getEndTime() {
		return endTime;
	}
	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}
	public BigDecimal getEstimateDistance() {
		return estimateDistance;
	}
	public void setEstimateDistance(BigDecimal estimateDistance) {
		this.estimateDistance = estimateDistance;
	}
	public BigDecimal getEstimateDuration() {
		return estimateDuration;
	}
	public void setEstimateDuration(BigDecimal estimateDuration) {
		this.estimateDuration = estimateDuration;
	}
	public BigDecimal getEstimateMoney() {
		return estimateMoney;
	}
	public void setEstimateMoney(BigDecimal estimateMoney) {
		this.estimateMoney = estimateMoney;
	}
	public Integer getTransactionType() {
		return transactionType;
	}
	public void setTransactionType(Integer transactionType) {
		this.transactionType = transactionType;
	}
	public Integer getSetOutCondition() {
		return setOutCondition;
	}
	public void setSetOutCondition(Integer setOutCondition) {
		this.setOutCondition = setOutCondition;
	}
	public String getGrabOrderUserId() {
		return grabOrderUserId;
	}
	public void setGrabOrderUserId(String grabOrderUserId) {
		this.grabOrderUserId = grabOrderUserId;
	}
	public BigDecimal getPayMoney() {
		return payMoney;
	}
	public void setPayMoney(BigDecimal payMoney) {
		this.payMoney = payMoney;
	}
	public Date getPayTime() {
		return payTime;
	}
	public void setPayTime(Date payTime) {
		this.payTime = payTime;
	}
	public Integer getPayType() {
		return payType;
	}
	public void setPayType(Integer payType) {
		this.payType = payType;
	}
	public String getPlaceOrderCity() {
		return placeOrderCity;
	}
	public void setPlaceOrderCity(String placeOrderCity) {
		this.placeOrderCity = placeOrderCity;
	}
	public String getPlaceOrderUserId() {
		return placeOrderUserId;
	}
	public void setPlaceOrderUserId(String placeOrderUserId) {
		this.placeOrderUserId = placeOrderUserId;
	}
	public Integer getPublishType() {
		return publishType;
	}
	public void setPublishType(Integer publishType) {
		this.publishType = publishType;
	}
	public Date getSetOutTime() {
		return setOutTime;
	}
	public void setSetOutTime(Date setOutTime) {
		this.setOutTime = setOutTime;
	}
	public Integer getSetOutType() {
		return setOutType;
	}
	public void setSetOutType(Integer setOutType) {
		this.setOutType = setOutType;
	}
	public String getStartAddress() {
		return startAddress;
	}
	public void setStartAddress(String startAddress) {
		this.startAddress = startAddress;
	}
	public Double getStartLatitude() {
		return startLatitude;
	}
	public void setStartLatitude(Double startLatitude) {
		this.startLatitude = startLatitude;
	}
	public Double getStartLongitude() {
		return startLongitude;
	}
	public void setStartLongitude(Double startLongitude) {
		this.startLongitude = startLongitude;
	}
	public BigDecimal getTotalMoney() {
		return totalMoney;
	}
	public void setTotalMoney(BigDecimal totalMoney) {
		this.totalMoney = totalMoney;
	}
	public String getEvaluateContent() {
		return evaluateContent;
	}
	public void setEvaluateContent(String evaluateContent) {
		this.evaluateContent = evaluateContent;
	}
	public Date getEvaluateDate() {
		return evaluateDate;
	}
	public void setEvaluateDate(Date evaluateDate) {
		this.evaluateDate = evaluateDate;
	}
	public String getEvaluateLabel() {
		return evaluateLabel;
	}
	public void setEvaluateLabel(String evaluateLabel) {
		this.evaluateLabel = evaluateLabel;
	}
	public BigDecimal getEvaluateLevel() {
		return evaluateLevel;
	}
	public void setEvaluateLevel(BigDecimal evaluateLevel) {
		this.evaluateLevel = evaluateLevel;
	}
	public Integer getIsDispay() {
		return isDispay;
	}
	public void setIsDispay(Integer isDispay) {
		this.isDispay = isDispay;
	}
	public BigDecimal getStartFee() {
		return startFee;
	}
	public void setStartFee(BigDecimal startFee) {
		this.startFee = startFee;
	}
	public BigDecimal getMinimums() {
		return minimums;
	}
	public void setMinimums(BigDecimal minimums) {
		this.minimums = minimums;
	}
	public BigDecimal getDurationFee() {
		return durationFee;
	}
	public void setDurationFee(BigDecimal durationFee) {
		this.durationFee = durationFee;
	}
	public BigDecimal getLongDistance() {
		return longDistance;
	}
	public void setLongDistance(BigDecimal longDistance) {
		this.longDistance = longDistance;
	}
	public BigDecimal getLongFee() {
		return longFee;
	}
	public void setLongFee(BigDecimal longFee) {
		this.longFee = longFee;
	}
	public BigDecimal getNightDistance() {
		return nightDistance;
	}
	public void setNightDistance(BigDecimal nightDistance) {
		this.nightDistance = nightDistance;
	}
	public BigDecimal getNightFee() {
		return nightFee;
	}
	public void setNightFee(BigDecimal nightFee) {
		this.nightFee = nightFee;
	}
	public String getDriverName() {
		return driverName;
	}
	public void setDriverName(String driverName) {
		this.driverName = driverName;
	}
	public String getPassengerName() {
		return passengerName;
	}
	public void setPassengerName(String passengerName) {
		this.passengerName = passengerName;
	}
	public String getPassengerPhone() {
		return passengerPhone;
	}
	public void setPassengerPhone(String passengerPhone) {
		this.passengerPhone = passengerPhone;
	}
	
}
